[INFO] fetching crate rivets 0.1.0...
[INFO] fixing rivets-0.1.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate rivets 0.1.0 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate rivets 0.1.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate rivets 0.1.0
[INFO] tweaked toml for crates.io crate rivets 0.1.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rivets 0.1.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rivets 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2
[INFO] running `Command { std: "docker" "start" "d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking tracing-core v0.1.35
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]     Checking bytes v1.11.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling thiserror v2.0.17
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]    Compiling toml_parser v1.0.4
[INFO] [stderr]     Checking indexmap v2.12.1
[INFO] [stderr]     Checking clap_lex v0.7.6
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling toml_datetime v0.7.3
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking smawk v0.3.2
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking textwrap v0.16.2
[INFO] [stderr]     Checking colored v3.0.0
[INFO] [stderr]     Checking clap_builder v4.5.53
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]    Compiling relative-path v1.9.3
[INFO] [stderr]     Checking petgraph v0.6.5
[INFO] [stderr]    Compiling toml_edit v0.23.7
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking terminal_size v0.4.3
[INFO] [stderr]     Checking tempfile v3.23.0
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.17
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking tokio v1.48.0
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tracing v0.1.43
[INFO] [stderr]     Checking tracing-subscriber v0.3.22
[INFO] [stderr]     Checking clap v4.5.53
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking chrono v0.4.42
[INFO] [stderr]     Checking tokio-stream v0.1.17
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking rstest v0.26.1
[INFO] [stderr]     Checking tokio-test v0.4.4
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stderr]     Checking rivets-jsonl v0.1.0
[INFO] [stderr]     Checking rivets v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:198:64
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 198 |                 execute::execute_info(&app, args, output_mode).await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 199 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:202:70
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 202 |                 execute::execute_create(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 203 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:206:64
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 206 |                 execute::execute_list(&app, args, output_mode).await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 207 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:210:64
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 210 |                 execute::execute_show(&app, args, output_mode).await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 211 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:214:70
[INFO] [stdout]     |
[INFO] [stdout] 213 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 214 |                 execute::execute_update(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 215 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:218:69
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 218 |                 execute::execute_close(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 219 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:222:70
[INFO] [stdout]     |
[INFO] [stdout] 221 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 222 |                 execute::execute_reopen(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 223 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 226 |                 execute::execute_delete(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 227 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:230:65
[INFO] [stdout]     |
[INFO] [stdout] 229 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 230 |                 execute::execute_ready(&app, args, output_mode).await
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 231 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:234:67
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 234 |                 execute::execute_dep(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |                                                                   |
[INFO] [stdout]     |                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 235 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:238:69
[INFO] [stdout]     |
[INFO] [stdout] 237 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 238 |                 execute::execute_label(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 239 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:242:65
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 242 |                 execute::execute_stale(&app, args, output_mode).await
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 243 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:246:67
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 246 |                 execute::execute_blocked(&app, args, output_mode).await
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |                                                                   |
[INFO] [stdout]     |                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 247 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:250:65
[INFO] [stdout]     |
[INFO] [stdout] 249 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 250 |                 execute::execute_stats(&app, args, output_mode).await
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 251 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/output.rs (5 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:198:64
[INFO] [stdout]     |
[INFO] [stdout] 197 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 198 |                 execute::execute_info(&app, args, output_mode).await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 199 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:202:70
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 202 |                 execute::execute_create(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 203 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:206:64
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 206 |                 execute::execute_list(&app, args, output_mode).await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 207 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:210:64
[INFO] [stdout]     |
[INFO] [stdout] 209 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 210 |                 execute::execute_show(&app, args, output_mode).await
[INFO] [stdout]     |                                                                ^^^^^
[INFO] [stdout]     |                                                                |
[INFO] [stdout]     |                                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 211 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:214:70
[INFO] [stdout]     |
[INFO] [stdout] 213 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 214 |                 execute::execute_update(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 215 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:218:69
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 218 |                 execute::execute_close(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 219 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:222:70
[INFO] [stdout]     |
[INFO] [stdout] 221 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 222 |                 execute::execute_reopen(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 223 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:226:70
[INFO] [stdout]     |
[INFO] [stdout] 225 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 226 |                 execute::execute_delete(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                      ^^^^^
[INFO] [stdout]     |                                                                      |
[INFO] [stdout]     |                                                                      this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                      up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 227 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:230:65
[INFO] [stdout]     |
[INFO] [stdout] 229 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 230 |                 execute::execute_ready(&app, args, output_mode).await
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 231 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:234:67
[INFO] [stdout]     |
[INFO] [stdout] 233 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 234 |                 execute::execute_dep(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |                                                                   |
[INFO] [stdout]     |                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 235 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:238:69
[INFO] [stdout]     |
[INFO] [stdout] 237 |                 let mut app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     -------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 238 |                 execute::execute_label(&mut app, args, output_mode).await
[INFO] [stdout]     |                                                                     ^^^^^
[INFO] [stdout]     |                                                                     |
[INFO] [stdout]     |                                                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 239 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:242:65
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 242 |                 execute::execute_stale(&app, args, output_mode).await
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 243 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:246:67
[INFO] [stdout]     |
[INFO] [stdout] 245 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 246 |                 execute::execute_blocked(&app, args, output_mode).await
[INFO] [stdout]     |                                                                   ^^^^^
[INFO] [stdout]     |                                                                   |
[INFO] [stdout]     |                                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 247 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/cli/mod.rs:250:65
[INFO] [stdout]     |
[INFO] [stdout] 249 |                 let app = load_app_from_cwd().await?;
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `app` calls a custom destructor
[INFO] [stdout]     |                     `app` will be dropped later as of Edition 2024
[INFO] [stdout] 250 |                 execute::execute_stats(&app, args, output_mode).await
[INFO] [stdout]     |                                                                 ^^^^^
[INFO] [stdout]     |                                                                 |
[INFO] [stdout]     |                                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                                 up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 251 |             }
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `app` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/init_integration.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/in_memory_resilient_loading.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/in_memory_storage.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/cli_tests.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.89s
[INFO] [stderr] crater-edition-check: rivets v0.1.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking rivets v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/output.rs:675:9
[INFO] [stdout]     |
[INFO] [stdout] 675 |         unsafe { env::set_var("RIVETS_ASCII", "1") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:6:11
[INFO] [stdout]     |
[INFO] [stdout]   6 | #![forbid(unsafe_code)]
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/output.rs:691:9
[INFO] [stdout]     |
[INFO] [stdout] 691 |         unsafe { env::remove_var("RIVETS_ASCII") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/output.rs:701:9
[INFO] [stdout]     |
[INFO] [stdout] 701 |         unsafe { env::set_var("RIVETS_MAX_WIDTH", "120") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/output.rs:705:9
[INFO] [stdout]     |
[INFO] [stdout] 705 |         unsafe { env::set_var("RIVETS_MAX_WIDTH", "invalid") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/output.rs:709:9
[INFO] [stdout]     |
[INFO] [stdout] 709 |         unsafe { env::remove_var("RIVETS_MAX_WIDTH") };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rivets` (lib test) due to 5 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2", kill_on_drop: false }`
[INFO] [stdout] d2a91904ff11876cdcbef92b5563a0b1afcd1b9db5d030419a25adbf62676fd2
